﻿package org.libspark.betweenas3.tweens
{
	import flash.events.IEventDispatcher;
	
	// EventDispatcher は委譲 & 遅延生成で実装しましょう。
	
	/**
	 * トゥイーン及びその制御.
	 * 
	 * @author	yossy:beinteractive
	 */
public interface ITween extends IEventDispatcher
{

	
	function play():void;
	function stop():void;

	function togglePause():void;	
	function gotoAndPlay(position:Number):void;
	function gotoAndStop(position:Number):void;

	function clone():ITween;
	
	function get duration():Number;
	function get position():Number;

	function get isPlaying():Boolean;
	
	function get stopOnComplete():Boolean;
	function set stopOnComplete(value:Boolean):void;
	
	
	function get onPlay():Function;
	function set onPlay(value:Function):void;
	function get onPlayParams():Array;
	function set onPlayParams(value:Array):void;
	
	function get onStop():Function;
	function set onStop(value:Function):void;
	function get onStopParams():Array;
	function set onStopParams(value:Array):void;
	
	function get onUpdate():Function;
	function set onUpdate(value:Function):void;
	function get onUpdateParams():Array;
	function set onUpdateParams(value:Array):void;
	
	function get onComplete():Function;
	function set onComplete(value:Function):void;
	function get onCompleteParams():Array;
	function set onCompleteParams(value:Array):void;
	
}
}